Field
The present invention relates to an apparatus and method to set the speed of a clock.
Relevant Background
In a hardware environment that provides virtual ownership to multiple execution environments (EEs), many EEs may own a command interface (e.g., a hardware (HW) command interface). Each EE may assume that it is the sole user of the HW. If concurrent events/commands occur from various EEs, each of the EEs may experience performance degradation.
Traditional clock-voting mechanisms have been used for multiple users of HW. In this traditional clock-voting mechanism, different EE users of the HW vote to turn the HW clock on and for a particular clock speed. An aggregator of the votes selects the highest vote (i.e., the most requested speed). Traditionally, each EE manages its local voting without taking other EEs into account. Unfortunately, for some EEs the selected speed may be too low and the amount of resultant degradation may not be manageable for that particular EE.